#ifndef _ComplexSprite_H_
#define _ComplexSprite_H_

#include "wiisprite.h"
#include <vector>

using namespace wsp;

class ComplexSprite{

  public:
    ComplexSprite();
	~ComplexSprite();
	
	void SetImage(Image* i);
	
	void AddCollisionBox(double x, double y, double w, double h);
	void ClearCollisionBoxes();
	
	void Draw();
	
	void SetRotation(u32 ang);
	void SetZoom(u32 zoom_val);
	void SetPosition(u32 x, u32 y);
	
	bool CollidesWith(ComplexSprite* s, bool check);
	bool CollidesWith(Sprite* s, bool check);
	
	Rectangle* BoxAt(unsigned int i);
	int GetCollisionBoxCount();
	Sprite* GetSprite();
	f32 GetRotation(){return sprite->GetRotation();}
	void Move(f32 deltaX, f32 deltaY){sprite->Move(deltaX, deltaY);}
		
  private:
    std::vector<Rectangle> collisionVec;
	Image* image;
	Sprite* sprite;
	
};

#endif //_ComplexSprite_H_
